package com.open.ssm.modules.trade.domain;

import java.math.BigDecimal;
import java.util.Date;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.open.ssm.common.core.domain.BaseEntity;
import com.open.ssm.converter.PayStatusConverter;

/**
 * 充电订单对象 ln_trade_rec
 * 
 * @author wangpf
 * @date 2021-08-18
 */
public class LnTradeRec extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private String id;

    /** 交易流水号 */
    @ExcelProperty(value = "交易流水号")
    private String tradeFlowNo;

    /** 是否已支付（01：未支付，02：已取消，99，已支付） */
    @ExcelProperty(value = "是否已支付", converter = PayStatusConverter.class)
    private String isPay;

    /** 交易金额 */
    @ExcelProperty(value = "交易金额")
    private BigDecimal chargeAmt;

    /** 充电电量 */
    @ExcelProperty(value = "充电电量")
    private BigDecimal chargePower;

    /** 充电开始时间 */
    @DateTimeFormat("yyyy-MM-dd HH:mm:ss")
    @ExcelProperty(value = "充电开始时间")
    private Date chgStartTime;

    /** 充电结束时间 */
    @DateTimeFormat("yyyy-MM-dd HH:mm:ss")
    @ExcelProperty(value = "充电结束时间")
    private Date chgEndTime;

    /** 充电桩编号 */
    @ExcelProperty(value = "充电桩编号")
    private String stakeno;

    /** 本次充电总费用(基本电费) */
    @ExcelProperty(value = "本次充电总电费")
    private BigDecimal totalElectricityPrice;

    /** 本次充电总服务费 */
    @ExcelProperty(value = "本次充电总服务费")
    private BigDecimal totalServicesPrice;

    /** 尖时段充电电量 */
    private BigDecimal sharpElectricity;

    /** 峰时段充电电量 */
    private BigDecimal peakElectricity;

    /** 平时段充电电量 */
    private BigDecimal flatElectricity;

    /** 谷时段充电电量 */
    private BigDecimal valleyElectricity;

    /** 尖时段服务费金额 */
    private BigDecimal sharpService;

    /** 峰时服务费金额 */
    private BigDecimal peakService;

    /** 平时段服务费金额 */
    private BigDecimal flatService;

    /** 谷时服务费金额 */
    private BigDecimal valleyService;

    /** 尖时段充电电费金额 */
    private BigDecimal sharpElectAmt;

    /** 峰时段充电电费金额 */
    private BigDecimal peakElectAmt;

    /** 平时段充电电费金额 */
    private BigDecimal flatElectAmt;

    /** 谷时段充电电费金额 */
    private BigDecimal valleyElectAmt;

    /** 停止原因 */
    private String stopReason;

    /** 备注信息 */
    private String remarks;

    /** 删除标记 */
    private String delFlag;

    public void setId(String id) 
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }
    public void setTradeFlowNo(String tradeFlowNo) 
    {
        this.tradeFlowNo = tradeFlowNo;
    }

    public String getTradeFlowNo() 
    {
        return tradeFlowNo;
    }
    public void setIsPay(String isPay) 
    {
        this.isPay = isPay;
    }

    public String getIsPay() 
    {
        return isPay;
    }
    public void setChargeAmt(BigDecimal chargeAmt) 
    {
        this.chargeAmt = chargeAmt;
    }

    public BigDecimal getChargeAmt() 
    {
        return chargeAmt;
    }
    public void setChargePower(BigDecimal chargePower) 
    {
        this.chargePower = chargePower;
    }

    public BigDecimal getChargePower() 
    {
        return chargePower;
    }
    public void setChgStartTime(Date chgStartTime) 
    {
        this.chgStartTime = chgStartTime;
    }

    public Date getChgStartTime() 
    {
        return chgStartTime;
    }
    public void setChgEndTime(Date chgEndTime) 
    {
        this.chgEndTime = chgEndTime;
    }

    public Date getChgEndTime() 
    {
        return chgEndTime;
    }
    public void setStakeno(String stakeno) 
    {
        this.stakeno = stakeno;
    }

    public String getStakeno() 
    {
        return stakeno;
    }
    public void setTotalElectricityPrice(BigDecimal totalElectricityPrice) 
    {
        this.totalElectricityPrice = totalElectricityPrice;
    }

    public BigDecimal getTotalElectricityPrice() 
    {
        return totalElectricityPrice;
    }
    public void setTotalServicesPrice(BigDecimal totalServicesPrice) 
    {
        this.totalServicesPrice = totalServicesPrice;
    }

    public BigDecimal getTotalServicesPrice() 
    {
        return totalServicesPrice;
    }
    public void setSharpElectricity(BigDecimal sharpElectricity) 
    {
        this.sharpElectricity = sharpElectricity;
    }

    public BigDecimal getSharpElectricity() 
    {
        return sharpElectricity;
    }
    public void setPeakElectricity(BigDecimal peakElectricity) 
    {
        this.peakElectricity = peakElectricity;
    }

    public BigDecimal getPeakElectricity() 
    {
        return peakElectricity;
    }
    public void setFlatElectricity(BigDecimal flatElectricity) 
    {
        this.flatElectricity = flatElectricity;
    }

    public BigDecimal getFlatElectricity() 
    {
        return flatElectricity;
    }
    public void setValleyElectricity(BigDecimal valleyElectricity) 
    {
        this.valleyElectricity = valleyElectricity;
    }

    public BigDecimal getValleyElectricity() 
    {
        return valleyElectricity;
    }
    public void setSharpService(BigDecimal sharpService) 
    {
        this.sharpService = sharpService;
    }

    public BigDecimal getSharpService() 
    {
        return sharpService;
    }
    public void setPeakService(BigDecimal peakService) 
    {
        this.peakService = peakService;
    }

    public BigDecimal getPeakService() 
    {
        return peakService;
    }
    public void setFlatService(BigDecimal flatService) 
    {
        this.flatService = flatService;
    }

    public BigDecimal getFlatService() 
    {
        return flatService;
    }
    public void setValleyService(BigDecimal valleyService) 
    {
        this.valleyService = valleyService;
    }

    public BigDecimal getValleyService() 
    {
        return valleyService;
    }
    public void setSharpElectAmt(BigDecimal sharpElectAmt) 
    {
        this.sharpElectAmt = sharpElectAmt;
    }

    public BigDecimal getSharpElectAmt() 
    {
        return sharpElectAmt;
    }
    public void setPeakElectAmt(BigDecimal peakElectAmt) 
    {
        this.peakElectAmt = peakElectAmt;
    }

    public BigDecimal getPeakElectAmt() 
    {
        return peakElectAmt;
    }
    public void setFlatElectAmt(BigDecimal flatElectAmt) 
    {
        this.flatElectAmt = flatElectAmt;
    }

    public BigDecimal getFlatElectAmt() 
    {
        return flatElectAmt;
    }
    public void setValleyElectAmt(BigDecimal valleyElectAmt) 
    {
        this.valleyElectAmt = valleyElectAmt;
    }

    public BigDecimal getValleyElectAmt() 
    {
        return valleyElectAmt;
    }
    public void setStopReason(String stopReason) 
    {
        this.stopReason = stopReason;
    }

    public String getStopReason() 
    {
        return stopReason;
    }
    public void setRemarks(String remarks) 
    {
        this.remarks = remarks;
    }

    public String getRemarks() 
    {
        return remarks;
    }
    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("tradeFlowNo", getTradeFlowNo())
            .append("isPay", getIsPay())
            .append("chargeAmt", getChargeAmt())
            .append("chargePower", getChargePower())
            .append("chgStartTime", getChgStartTime())
            .append("chgEndTime", getChgEndTime())
            .append("stakeno", getStakeno())
            .append("totalElectricityPrice", getTotalElectricityPrice())
            .append("totalServicesPrice", getTotalServicesPrice())
            .append("sharpElectricity", getSharpElectricity())
            .append("peakElectricity", getPeakElectricity())
            .append("flatElectricity", getFlatElectricity())
            .append("valleyElectricity", getValleyElectricity())
            .append("sharpService", getSharpService())
            .append("peakService", getPeakService())
            .append("flatService", getFlatService())
            .append("valleyService", getValleyService())
            .append("sharpElectAmt", getSharpElectAmt())
            .append("peakElectAmt", getPeakElectAmt())
            .append("flatElectAmt", getFlatElectAmt())
            .append("valleyElectAmt", getValleyElectAmt())
            .append("stopReason", getStopReason())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remarks", getRemarks())
            .append("delFlag", getDelFlag())
            .toString();
    }
}
